#include <string>
#include <iostream>
#include <sstream>
#include <cmath>
#include "Defs.h"
#ifndef VALUES_H
#define VALUES_H
#define A_INIT 0x67452301
#define B_INIT 0xEFCDAB89
#define C_INIT 0x98BADCFE
#define D_INIT 0x10325476
#define CANT_VAR_ENCADENAMIENTO 4
class Valores{
	private:
		unsigned var_encad[CANT_VAR_ENCADENAMIENTO];
		void actualizar_var_encad(Valores& val,bool asignar=true);
	public:
		Valores();
		Valores(Valores& val);
		Valores& operator=(Valores& val);
		Valores& operator+=(Valores& val);
		unsigned& operator[](const int& idx);
		void rotar();
		operator std::string () const;		
		
};
#endif
